package ejbNegocio;

import java.util.ArrayList;

import interfaces.InterfazControlUsuarios;

import javax.ejb.Local;
import javax.ejb.Stateless;
import javax.ejb.TransactionManagement;
import javax.ejb.TransactionManagementType;

import objetosNegocio.ObjetoDeNegocioControlUsuarios;
import vo.CuentaBancaria;
import vo.Usuario;

/**
 * Session Bean implementation class ControlUsuariosEJB
 */
@Stateless
@TransactionManagement(TransactionManagementType.BEAN)
@Local( { InterfazControlUsuarios.class })
public class ControlUsuariosEJB implements InterfazControlUsuarios 
{
	private ObjetoDeNegocioControlUsuarios objetoDeNegocioControlUsuarios;
    /**
     * Default constructor. 
     */
    public ControlUsuariosEJB() 
    {
        this.objetoDeNegocioControlUsuarios = new ObjetoDeNegocioControlUsuarios();
    }

	/**
     * @see InterfazControlUsuarios#ingresarUsuario(Usuario, CuentaBancaria)
     */
    public boolean ingresarUsuario(Usuario usuario, CuentaBancaria cuentaBancaria)
    {
        return objetoDeNegocioControlUsuarios.ingresarUsuario(usuario, cuentaBancaria);
    }

	/**
     * @see InterfazControlUsuarios#obtenerUsuarios()
     */
    public ArrayList<Usuario> obtenerUsuarios() 
    {
    	return objetoDeNegocioControlUsuarios.obtenerUsuarios();
    }

	/**
     * @see InterfazControlUsuarios#obtenerUsuario(Usuario)
     */
    public Usuario obtenerUsuario(Usuario usuario) 
    {
        return objetoDeNegocioControlUsuarios.obtenerUsuario(usuario);
    }

	/**
     * @see InterfazControlUsuarios#actualizarUsuario(Usuario, Usuario, CuentaBancaria)
     */
    public boolean actualizarUsuario(Usuario usuario, Usuario nuevoUsuario, CuentaBancaria cuentaBancaria) 
    {
        return objetoDeNegocioControlUsuarios.actualizarUsuario(usuario, nuevoUsuario, cuentaBancaria);
    }

	/**
     * @see InterfazControlUsuarios#eliminarUsuario(Usuario)
     */
    public boolean eliminarUsuario(Usuario usuario) {
        // TODO Auto-generated method stub
			return false;
    }
    
    public CuentaBancaria obtenerCuentaBancaria(Usuario usuario) 
    {
    	return objetoDeNegocioControlUsuarios.obtenerCuentaBancaria(usuario);
    }

}
